Method and system for determining a location of wireless device

ABSTRACT

A system for (a) determining a first direction from a first device toward a second device based on a first set of WiFi® wireless signals received by at least one antenna of the first device from the second device, (b) determining a second direction from a third device toward the second device based on a second set of WiFi® wireless signals received by at least one antenna of the third device from the second device, and (c) based at least on a first location of the first device, the first direction from the first device toward the second device, a second location of the third device, and the second direction from the third device toward the second device: determining a third location of the second device.

TECHNICAL FIELD

The present disclosure relates to determining a location of a wirelessdevice. In particular, the present disclosure relates to determining thelocation of a wireless device based on WiFi® (WiFi® is a registeredtrademark of WiFi® Alliance) signals received from the wireless device.

BACKGROUND

In recent years, Wireless Local Area Network (WLAN) technologies haveemerged as a fast-growing market. Among the various WLAN technologies,Institute of Electrical and Electronics Engineers (IEEE) 802.11 standardis the dominating technology and is frequently used for WLANs.

Devices within WLANs communicate wirelessly pursuant to the 802.11standard with other devices within the WLAN to request, grant, provide,and/or receive access to network resources. Furthermore, three deviceswithin the WLAN may receive WiFi® signals from a particular device anddetermine a signal strength of the received signals. Conventionally, thesignal strength of the received signals is only used to determine adistance between the transmitting device and receiving devices. Ageneral area where a transmitting device is located may be determinedbased on the distances from each of the receiving devices.

The approaches described in this section are approaches that could bepursued, but not necessarily approaches that have been previouslyconceived or pursued. Therefore, unless otherwise indicated, it shouldnot be assumed that any of the approaches described in this sectionqualify as prior art merely by virtue of their inclusion in thissection.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments are illustrated by way of example and not by way oflimitation in the figures of the accompanying drawings. It should benoted that references to “an” or “one” embodiment in this disclosure arenot necessarily to the same embodiment, and they mean at least one. Inthe drawings:

FIG. 1 shows a block diagram example of a system in accordance with oneor more embodiments;

FIG. 2 shows a block diagram example of an access point in accordancewith one or more embodiments;

FIG. 3 illustrates an example method for determining a location of atransmitting device in accordance with one or more embodiments.

DETAILED DESCRIPTION

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding. One or more embodiments may be practiced without thesespecific details. Features described in one embodiment may be combinedwith features described in a different embodiment. In some examples,well-known structures and devices are described with reference to ablock diagram form in order to avoid unnecessarily obscuring the presentinvention. The detailed description includes the following sections:

-   -   1. GENERAL OVERVIEW    -   2. ARCHITECTURAL OVERVIEW    -   3. DETERMINING A LOCATION OF A TRANSMITTING DEVICE BASED AT        LEAST ON A DIRECTION TOWARD THE TRANSMITTING DEVICE FROM        RECEIVING DEVICES    -   4. DETERMINING A LOCATION OF A TRANSMITTING DEVICE BASED AT        LEAST ON (i) A DIRECTION TOWARD THE TRANSMITTING DEVICE FROM AN        ACCESS POINT AND (ii) A DISTANCE BETWEEN THE TRANSMITTING DEVICE        AND THE ACCESS POINT.    -   5. ORIENTING DIRECTIONAL FOCUS FOR ANTENNAS OF RECEIVING DEVICES    -   6. DETERMINING A LOCATION OF AN ACCESS POINT    -   7. MODIFYING A RADIATION PATTERN BY MODIFYING A PHYSICAL        CONFIGURATION OF ANTENNAS USING AN EXTERNAL COMPONENT    -   8. MISCELLANEOUS; EXTENSIONS

1. General Overview

In an embodiment, a location of a particular device is determined basedon WiFi® signals received by one or more other devices. The WiFi®signals are received by the other devices using at least one directionalantenna and/or at least one adaptive array antenna.

In an embodiment, a location of a transmitting device is determined bytwo or more devices by determining a direction toward the transmittingdevice from each of the two or more devices based on WiFi® signalsreceived by the two or more devices from the transmitting device. Thelocation of the transmitting device is determined based on (i) thelocation of the two or more devices and (ii) the intersection ofrespective projections directed toward the transmitting device from thetwo or more devices.

In an embodiment, a location of transmitting device is determined by asingle device (for example, an access point) by (a) determining adirection toward the transmitting device from the access point and (b) adistance between the transmitting device and the access point based onthe WiFi® signals received by one or more adaptive array antennas of thesingle device from the transmitting device.

Embodiments include any combination of determining a direction and/or adistance toward a transmitting device from one or more devices, anddetermining a location of the transmitting device based on thisinformation.

2. Architectural Overview

One or more embodiments described herein are applicable for determininga location of a wireless device based at least on a direction from whichother devices receive WiFi® signals from that wireless device.

A wireless device includes any device that can be configured tocommunicate wirelessly with another wireless device. Some wirelessdevices may also be configured to communicate with other devices using awired connection. The examples herein which refer to a specific type ofwireless device (such as an access point or a client device) may beequally applicable to other wireless devices (such as a mesh node ormesh portal). Furthermore, examples referring to a specific type ofwireless signal (for example, WiFi® signals) may be equally applicationother types of wireless signals.

FIG. 1 shows a block diagram example of a digital system in accordancewith one or more embodiments. Digital System 1, as illustrated in FIG.1, includes a set of devices that may be connected via one or morenetworks (for example, a Local Area Network, a Wide Area Network, theInternet, Intranet, etc.). Specific examples of devices (for example,client device 16, access point 10, access point 12, and access point140) or connections between devices are referred to herein for purposesof clarity. Embodiments are applicable to any type or set of devicessuch that a location of a particular device is determined based onwireless signals transmitted by the particular device.

In an embodiment, the client device 16 is a digital device that includesa processor, memory hierarchy, and input/output (I/O) interfacesincluding a wireless interface such as an IEEE 802.11 wirelessinterface. The wireless interface is configured to communicate with oneor more devices (for example, access points). Examples of client device16 include personal computers, laptop computers, netbook computers,wireless music players, portable telephone communications devices, smartphones, tablets, and digital televisions. The client device 16 is anexample of a transmitting device (as referred to herein) which isconfigured to transmit wireless signals (for example, WiFi® signals).

In an example, the access point 10, access point 12, and access point 14are network devices. The access points are communicatively coupled to anetwork via a transmission medium to send and receive data. The accesspoint 10, access point 12, and access point 14 are examples of receivingdevices which receive WiFi® signals from the client device 16. Accesspoints are further described below with reference to FIG. 2.

System 1 may include more or less devices, than the devices illustratedin FIG. 1, that may be connected to other devices within System 1 viawired and/or wireless segments. For example, System 1 may include asingle access point 10 which is configured to determine a location ofclient device 16 based on WiFi® signals received from client device 16.

In an example, System 1 may include a controller (or other device) whichis configured to communicate with receiving devices (for example, accesspoint 10, access point 12, and access point 14). The controller (notillustrated) may communicatively link an access point to a network.

Operations described herein such as but not limited to determining adirection toward a client device 16 from a receiving device, determininga distance between client device 16 and a receiving device, and/ordetermining a location of client device 16, may be performed by thecontroller or by another device.

FIG. 2 shows a block diagram example of access point 10 in accordancewith one or more embodiments. The access point 10 is a network devicethat comprises one or more of: a processor 21, data storage 22, an I/Ointerface 23, a direction determination logic 24, a distancedetermination logic 25, and an antenna(s) 26. Other access points withinSystem 1 may be configured similarly or differently than access point10.

The data storage 22 of the access point 10 may include a fast read-writememory for storing programs and data during the access point 10'soperations and a hierarchy of persistent memory such as ROM, EPROM, andFlash memory for storing instructions and data needed for the startupand/or operations of access point 10. The data storage 22 stores datathat is to be transmitted from the access point 10 or data that isreceived by access point 10. In an embodiment, the data storage 22 is adistributed set of data storage components.

In an embodiment, the I/O interface 23 corresponds to one or morecomponents used for communicating with other devices via wired orwireless segments. The I/O interface 23 may include a wired networkinterface such as an IEEE 802.3 Ethernet interface and/or a wirelessinterface such as an IEEE 802.11 WiFi® interface.

The processor 21 is coupled to the data storage 22 and the I/O interface23. The processor 21 may be any processing device including, but notlimited to a MIPS-class processor, a microprocessor, a digital signalprocessor, an application specific integrated circuit, amicrocontroller, a state machine, or any type of programmable logicarray.

In an embodiment, access point 10 includes one or more antennasconfigured at least to receive WiFi® signals transmitted by clientdevice 16. The WiFi® signals received by the one or more antennas may beused to determine a direction and/or a distance of a transmitting devicesuch as client device 16. In an embodiment, access point 10 includes atleast one antenna 26 which may be a directional antenna or an adaptivearray antenna.

An adaptive array antenna (may be referred to as a smart antenna) or adirectional antenna (may be referred as a beam antenna) are antennaswhich may radiate greater power in one or more directions than otherdirections allowing for increased performance in the one or moredirections while transmitting or receiving WiFi® wireless signals.Furthermore, use of such an antenna may result in reduced interferencefrom unwanted sources in the other directions. Adaptive array antennasor directional antennas of a receiving device may be used to determine adirection toward a transmitting device and/or a distance between thereceiving device and the transmitting device.

In one example, an adaptive array antenna uses various antenna patternsfocused on different directions (referred to as beamforming) in both theElevation (E-plane) and Azimuth (H-plane) to receive Wi-Fi signals froma particular device. Beamforming is a method used to create theradiation pattern of the antenna array by adding constructively thephases of the signals in the direction of a target device (for example,client device 16).

In another example, a directional antenna receives different WiFi®signals, with different corresponding signal strengths, from atransmitting device while the directional antenna is physically directedin different directions. The direction in which a radiation pattern isprimarily focused by an adaptive array antenna or a directional antennais referred to in this application as the “directional focus” of theantenna. The directional focus of adaptive array antennas iselectronically controllable.

In an embodiment, the different WiFi® signals received from thetransmitting device are received at different signal strengths, thesignal strengths being based on a transmit power with which the WiFi®signal was transmitted and the directional focus of antenna 26 of accesspoint 10. Each received WiFi® signal is accordingly associated with adirectional focus of antenna 26 with which the WiFi® signal was receivedfrom client device 16.

A transmit power refers to the Equivalent Isotropically Radiated Power(EIRP) or Effective Isotropically Radiated Power (EIRP). The transmitpower may refer to the amount of power that a theoretical isotropicantenna would emit to produce the peak power density observed in thedirection of maximum antenna gain. The transmit power may be expressedin dB-microvolts (dBm) or in decibels above a reference level of onemilliwatt (dBm).

A wireless signal loses power as the wireless signal propagates from theclient device 16 to the access point 10. As a result of losing power,the access point 10 receives a WiFi® signal at a particular signalstrength that is lower than the transmit power with which the WiFi®signal was initially transmitted by the client device 16. The signalstrength may further depend on the type and/or directional focus of theantennas of the transmitting device and receiving device.

In an embodiment, the direction determination logic 24 includes one ormore functional units implemented using firmware, hardware, software, ora combination thereof for determining a direction from the access point10 toward client device 16. Although, the direction determination logic24 is shown as implemented on access point 10, one or more physical orfunctional components of the direction determination logic 24 may beimplemented on a separate device such as a controller. For example, thecontroller may perform one of the operations based on informationidentifying received WiFi® signals, a corresponding signal strength, anda corresponding directional focus of the antenna 26 used for receivingthe WiFi® signals.

In an embodiment, the distance determination logic 25 includes one ormore functional units implemented using firmware, hardware, software, ora combination thereof for determining a distance from the access point10 to client device 16. Although, the distance determination logic 25 isshown as implemented on access point 10, one or more physical orfunctional components of the distance determination logic 25 may beimplemented on a separate device such as a controller. For example, thecontroller may perform one of the operations based on informationidentifying received WiFi® signals and a corresponding signal strength.The information may further include a transmit power with which theWiFi® signals were transmitted or a standard/default transmit power usedby devices within System 1.

3. Determining a Location of a Transmitting Device Based at Least on aDirection Toward the Transmitting Device from Receiving Devices

FIG. 3 illustrates an example method for determining a location of atransmitting device based at least on a direction toward thetransmitting device from a receiving device based on received WiFi®signals in accordance with one or more embodiments. Operations fordetermining the location, as described herein with reference to FIG. 3,may be omitted, rearranged, or modified. Furthermore, operations may beadded or performed by different components or devices. Accordingly, thespecific set or sequence of operations should not be construed aslimiting the scope of any of the embodiments.

In an embodiment, the locations of two or more devices (for example,access points) are coordinated with respect to at least one sharedreference point (Operation 302). The shared reference point may be anactual location or a shared reference frame. A shared reference pointincludes any information which may be used to compute a location of oneof the receiving devices with respect to a location of another receivingdevice. Examples of shared reference points include but are not limitedto:

-   -   a. Global Positioning System (GPS) coordinates    -   b. Latitude and Longitude coordinates    -   c. A particular location from which devices are referenced (for        example, 10 meters at 30 degrees from the particular location        and 5 meters south at 270 degrees from the particular location).    -   d. A location of one of the receiving devices (for example,        access point 12 is 15 meters directly northeast of access point        10; in another example, access point 12 is 15 meters in a        direction 15 degrees clockwise from a center of a vendor label        on access point 10)    -   e. Building Floor Plan    -   f. Fixed Objects within an Operating Environment

The shared reference point(s) may refer to absolute locations orrelative locations. Absolute locations (e.g., GPS coordinates) ofreceiving devices may be used to determine an absolute location of atransmitting device. Relative locations of two receiving devices may beused to determine a location of a transmitting device relative to thereceiving device(s).

In an embodiment, coordinating the locations of two or more devicesincludes coordinating a direction of one device relative to anotherdevice and/or directional focus of an antenna. As stated in the exampleabove, access point 12 is 15 meters in a direction 15 degrees clockwisefrom a center of a vender label on access point 10.

In an embodiment, an orientation of a receiving device may be based onan installer of the receiving device installing the receiving device inaccordance with particular guidelines. For example, a digital compassindicator or a compass rose on an access point may be used by aninstaller of the access point to point a certain component of eachaccess point in a true North direction. Thereafter, communicationsreceived by the access point may be determined to be at a particulardirection with relation to that true North direction. The orientationmay be in any direction in a 3-dimensional space accordingly to apredetermined scheme in order to coordinate the orientation of differentinstalled devices. The orientation and/or location of other devices maybe determined based on the known configuration of one device.

In one example, a distance between two access points may be determinedbased on one or more WiFi® signals transmitted between the two accesspoints. A first access point 10 transmits a WiFi® signal to a secondaccess point and indicates a transmit power at which the WiFi® signalwas transmitted. Based at least on the signal strength of the receivedsignal at the second access point and the transmit power used by thefirst access point, a loss in signal strength is computed and used toestimate a distance between the two access points.

In an embodiment, at least two devices each using at least one adaptivearray antenna or directional antenna receive WiFi® signals from a clientdevice (Operation 304). A client device is used herein as an example forpurposes of clarity, however, embodiments are applicable to determininga location of any device based on WiFi® signals received from thatdevice.

In an example, one or more directional antennas or adaptive arrayantennas of a first device are configured to generate radiation patternsfocused in different directions while receiving WiFi® signals from theclient device. An adaptive array antenna may generate radiation patternsin different directions by combining elements in a phased array in sucha way that signals at particular angles experience constructiveinterference while others experience destructive interference. Adirectional antenna may generate radiation patterns in differentdirections by modification of a physical orientation of the directionantenna. WiFi® signals received by antennas using different directionalfocus are received with different corresponding signal strengths. In anexample, WiFi® signals are received with a high signal strength when theWiFi® signals are received from a transmitting device while adirectional focus of the antenna of a receiving device is in a directiontoward the transmitting device. In contrast, WiFi® signals are receivedwith lower signal strengths (sometimes not received) when thedirectional focus of the same antenna of the receiving device is not ina direction toward the transmitting device.

In an embodiment, based on the received WiFi® signals from the clientdevice, a direction toward a transmitting device from each of the atleast two devices is determined (Operation 306).

In an example, the signal strengths of received WiFi® signals iscompared to identify one or more WiFi® signals with the highest signalstrength or with a signal strength above a certain threshold. Thedirectional focus of an antenna when receiving the identified WiFi®signals is used to determine a direction toward the transmitting device.

In another example, average signal strength over different directionintervals is determined and analyzed to identify the direction intervalin the direction of the client device. In an example, each of thereceived WiFi® signals are partitioned into one of twelve buckets basedon a directional focus of an antenna when that WiFi® signal wasreceived. The twelve buckets include: 0 to 30 degrees; 30 to 60 degrees;60 to 90 degrees; 90 to 120 degrees; 120 to 150 degrees; 150 to 180degrees; 180 to 210 degrees; 210 to 240 degrees; 240 to 270 degrees; 270to 300 degrees; 300 to 330 degrees; and 330 to 360 degrees. An averagesignal strength of WiFi® signals associated with each interval iscomputed and an interval with the highest average signal strength isidentified. A center direction of that interval is then determined to bethe direction of the client device. In this example, if the averagehighest signal strength is determined to be associated with the 180 to210 degree interval, the client device is determined to be at adirection that at 195 degrees from a particular component of thereceiving device that is deemed to be at 0 degrees.

For purposes of clarity, the above example describes non-overlappingintervals in a 2-dimensional space. However, embodiments are alsoapplicable to overlapping intervals (for example, 0 to 30 degrees; 10 to40 degrees; 20 to 50 degrees; etc.) and 3-dimensional intervals (forexample, 0 to 30 degrees in the x-y plane and 0 to 40 degrees in thez-plane from the center of an access point or a directional antenna).The use of average signal strength in overlapping intervals to identifya direction toward the client device is advantageous, for example, toremove outliers or erroneous readings.

In an embodiment, a location of a transmitting device is determinedbased on locations of the receiving devices and respective directionstoward the transmitting device from each receiving device (Operation308). In one example, a projection from a first receiving device towardthe transmitting device is intersected with a projection from a secondreceiving device toward the transmitting device. The intersection pointof the projections is determined to be the location of the transmittingdevice.

4. Determining a Location of a Transmitting Device Based at Least on (i)a Direction Toward the Transmitting Device from an Access Point and (ii)a Distance Between the Transmitting Device and the Access Point.

In an embodiment, a location of a transmitting device is determinedbased on Wi-Fi signals received by an access point(s). In an example,WiFi® signals received by a single access point are used to determine(i) a direction toward the transmitting device from the single accesspoint and (ii) a distance between the transmitting device and the singleaccess point.

As described herein, a direction toward a transmitting device from asingle access point may be determined based on WiFi® signals received byan adaptive array antenna or a directional antenna of the single accesspoint. In addition to the direction toward the transmitting device, adistance between the single access point and the transmitting device isdetermined based on a signal strength of the received WiFi® signals. Aloss in signal strength is computed by subtracting a signal strength ofreceived WiFi® signals from an actual transmit power for the WiFi®signals or default transmit power associated with the transmittingdevice. Based at least on the loss in signal strength, a distancebetween the transmitting device and the single access point isestimated. Additional computations to account for environmentalconditions, etc. may be used to obtain more precise distance estimates.

In an embodiment, (i) a direction toward the transmitting device fromthe single access point and (ii) a distance between the transmittingdevice and the single access point is used to determine a location ofthe transmitting device. The location of the transmitting device may bedetermined relative to the location of the access point. For example,the relative location the transmitting device is determined to be at 30degrees south of east (based on direction from which WiFi® signals arereceived) at 10 meters (based on signal strength of received WiFi®signals) from the single access point. In another example, the relativelocation of the transmitting device with respect to the single accesspoint may be applied to an absolute location of the single access point(e.g., GPS coordinates) to determine the absolute location of thetransmitting device (e.g., GPS coordinates).

5. Orienting Directional Focus for Antennas of Receiving Devices

As described above with relation to Operation 302 the locations of twoor more devices may be coordinated with respect to at least one sharedreference point. The following example relates to coordinating thelocations and orienting the directional focus for antennas of receivingdevices. Orienting the directional focus of antennas for receivingdevices allows for determining how receiving devices are communicativelyconnected and installed with relation to each other.

In this example, three access points (APs) each have at least oneadaptive array antenna which are used to receive WiFi® signals from atarget device. A location of the target device is to be determined basedon received WiFi® signals in accordance with one or more embodiments.The adaptive array antennas are configured for operation in four primarydirections that are 90 degrees separated. The values d1, d2, d3, d4represent the four directions moving clockwise around the AP from d1.

AP1 is installed as the reference “seed” AP with d1 pointed north. Ann×m matrix is created of signal levels for the APs as shown in Table 1where n is the number of APs and m is determined the number of availableadaptive antenna array patterns.

TABLE 1 Example n × m array of signal levels for three APs with 4adaptive patterns AP1d1 AP1d2 AP1d3 Ap1d4 AP2d1 AP2d2 AP2d3 AP2d4 AP3d1AP3d2 AP3d3 AP3d4

Since the reference or “seed” AP1 for the matrix has known directionsassociated with each pattern (d1-d4 in this example) the alignment ofeach unknown AP (for example, AP2 and AP3) can be determined as an“offset” from the reference. In this example, since AP1d1 is “North”, ifAP2d1 shows the greatest signal strength in the AP1 to AP2 matrix toAP1d3 it can be determined that AP2d1 is also facing “North” and AP2 isthen considered “Known” based on a 1-level comparison (trace) to thereference AP1. Subsequently if AP3 or AP4 cannot be directly compared toAP1 due to signal level limitations (i.e. range), then AP3 or AP4 can becompared to a second level trace AP which has already been classified asknown, such as AP2 in this example. This may continue as third, fourth,etc. levels of trace back to the reference AP1 until all orientationsare considered “known”. As such the reference APs are used to “seed” thematrix with known directions and the “offset” of all unknown APs isdetermined by scanning the available adaptive antenna patterns todetermine which pattern is aligned with which pattern on a “known” AP.

When assisted information is available from other out of band locationtechnologies such as GPS or A-GPS, the locations of the access pointsare known and the direction relative to each other is also known. Byassuming initially all access points are pointed with a referencepattern (e.g. d1) in a reference direction (e.g., “North”) the signallevel of pattern pairs between APs can be interrogated and compared tothe expected result based on the AP locations, distance and assumedorientation.

In an example, GPS data indicates that AP1 and AP2 are 1 km apart and ona bearing of 90 degrees to each other. Based on the GPS data, themaximum signal should be between AP1d2 and AP2d4. Based on actual signaldata the maximum is found to be between AP1d1 and AP2d4. Based on thisinformation it is determined that AP1 is installed with d1 facing d4instead of d2 facing d4. A comparison of additional access points anddirection pairs may be used to build a matrix of which way each adaptivepattern is facing relative to the other access points. Three accesspoints with definitive directional pairs (e.g., pairs of patterns withinrange) may be used to solve the matrix.

6. Determining a Location of an Access Point

In an embodiment, a location of an access point is determined based on alocation of client devices associated with the access point. Each clientdevice may determine a location of that client device based on datacollected by a GPS chip of that client device. The location of clientdevices associated with an access point is transmitted from the clientdevices to the access point. Based on a distance between the clientdevices and the access point and the location of the client devices: alocation of the access point is determined. In an example, the GPScoordinates of the access point is determined based on the GPScoordinates of the client devices associated with the access point.

7. Modifying a Radiation Pattern by Modifying a Physical Configurationof Antennas Using an External Component

In an embodiment, a radiation pattern generated by an access point maybe modified by modifying a physical configuration of one or moreantennas of the access point.

In an example, a position of one or more antennas determines thedirectional focus of a radiation pattern generated by an access point.The position of the one or more antennas may be moved manually orelectronically to modify the directional focus of the radiation pattern.

In an embodiment, an access point includes an external physicalcomponent that controls the position of one or more antennas of theaccess point. In an example, a knob on the outside of the access pointmay be turned to move one or more antennas toward the edge of the accesspoint or away from the edge of the access point (the knob may beconnected to a lever which in turn is connected to the one or moreantennas). In another example, a switch may be used to select one of twopositions for antennas of an access point. Multiple switches, knobs, orother external components may be used to provide individual control ofdifferent antennas. Furthermore, components such as switches and knobsmay be used to select one of two or more possible positions for at leastone antenna of the access point.

In an embodiment, the use of different directional focuses of radiationpatterns may be used to receive WiFi® signals from a transmittingdevice. As described in earlier sections, a direction toward thetransmitting device and/or a distance to the transmitting device from areceiving device may be determined based on received WiFi® signals.

8. Miscellaneous; Extensions

Embodiments are directed to a system with one or more devices thatinclude a hardware processor and that are configured to perform any ofthe operations described herein and/or recited in any of the claimsbelow.

In an embodiment, a non-transitory computer readable storage mediumcomprises instructions which, when executed by one or more processors,causes performance of any of the operations described herein and/orrecited in any of the claims.

Any combination of the features and functionalities described herein maybe used in accordance with one or more embodiments. In the foregoingspecification, embodiments have been described with reference tonumerous specific details that may vary from implementation toimplementation. The specification and drawings are, accordingly, to beregarded in an illustrative rather than a restrictive sense. The soleand exclusive indicator of the scope of the invention, and what isintended by the applicants to be the scope of the invention, is theliteral and equivalent scope of the set of claims that issue from thisapplication, in the specific form in which such claims issue, includingany subsequent correction.

What is claimed is:
 1. A system comprising: at least one devicecomprising a hardware processor; the system being configured forperforming operations comprising: determining a first direction from afirst device toward a second device based on a first set of WiFi®wireless signals received by at least one antenna of the first devicefrom the second device; determining a second direction from a thirddevice toward the second device based on a second set of WiFi® wirelesssignals received by at least one antenna of the third device from thesecond device; based at least on a first location of the first device,the first direction from the first device toward the second device, asecond location of the third device, and the second direction from thethird device toward the second device: determining a third location ofthe second device.
 2. The system of claim 1, wherein at least oneantenna of the first device is one of: an adaptive array antenna or adirectional antenna.
 3. The system of claim 1, wherein determining thethird location of the second device comprises determining anintersection point between (a) a first projection from first device inthe first direction and (b) a second projection from the third device inthe second direction.
 4. The system of claim 1, wherein the first set ofWiFi® wireless signals is received by the at least one antenna of thefirst device while a radiation pattern of the at least one antenna isvaried to focus at a plurality of different directions from the firstdevice during corresponding different periods of time.
 5. The system ofclaim 4, wherein determining the first direction from the first devicetoward the second device based on the first set of WiFi® wirelesssignals comprises: selecting the first direction from the plurality ofdifferent directions responsive to determining that a WiFi® wirelesssignal of the first set of wireless signals with a largestSignal-To-Noise ratio was received while the at least one antenna wasfocused in the first direction.
 6. The system of claim 1, whereindetermining the third location is further based on an orientation of thethird device respective to (a) an orientation of the first device or (b)a cardinal direction.
 7. The system of claim 6, wherein the operationsfurther comprise determining the orientation of the third devicerespective to the orientation of the first device by transmitting one ormore wireless signals between the at least one antenna of the firstdevice and the at least one antenna of the third device.
 8. The systemof claim 1, wherein determining the third location of the second deviceis further based on a signal strength of at least one of the first setof WiFi® wireless signals received by the at least one antenna of thefirst device from the second device.
 9. A system comprising: at leastone device comprising a hardware processor; the system being configuredfor performing operations comprising: determining a direction from anaccess point toward a particular device based on a first set of WiFi®wireless signals received by at least one antenna of the access pointfrom the particular device; determining a distance between the accesspoint and the particular device based on the first set of WiFi® wirelesssignals received by the at least one antenna of the access point fromthe particular device; based at least on (i) the direction from a accesspoint toward the particular device, (ii) the distance between the accesspoint and the particular device, and (iii) a location of the accesspoint: determining a location of the particular device.
 10. The systemof claim 1, wherein at least one antenna of the access point is one of:an adaptive array antenna or a directional antenna.
 11. A non-transitorycomputer readable medium comprising instructions which, when executed byone or more hardware processors, causes performance of operationscomprising: determining a first direction from a first device toward asecond device based on a first set of WiFi® wireless signals received byat least one antenna of the first device from the second device;determining a second direction from a third device toward the seconddevice based on a second set of WiFi® wireless signals received by atleast one antenna of the third device from the second device; based atleast on a first location of the first device, the first direction fromthe first device toward the second device, a second location of thethird device, and the second direction from the third device toward thesecond device: determining a third location of the second device. 12.The medium of claim 11, wherein at least one antenna of the first deviceis one of: an adaptive array antenna or a directional antenna.
 13. Themedium of claim 11, wherein determining the third location of the seconddevice comprises determining an intersection point between (a) a firstprojection from first device in the first direction and (b) a secondprojection from the third device in the second direction.
 14. The mediumof claim 11, wherein the first set of WiFi® wireless signals is receivedby the at least one antenna of the first device while a radiationpattern of the at least one antenna is varied to focus at a plurality ofdifferent directions from the first device during correspondingdifferent periods of time.
 15. The medium of claim 14, whereindetermining the first direction from the first device toward the seconddevice based on the first set of WiFi® wireless signals comprises:selecting the first direction from the plurality of different directionsresponsive to determining that a WiFi® wireless signal of the first setof wireless signals with a largest Signal-To-Noise ratio was receivedwhile the at least one antenna was focused in the first direction. 16.The medium of claim 11, wherein determining the third location isfurther based on an orientation of the third device respective to (a) anorientation of the first device or (b) a cardinal direction.
 17. Themedium of claim 16, wherein the operations further comprise determiningthe orientation of the third device respective to the orientation of thefirst device by transmitting one or more wireless signals between the atleast one antenna of the first device and the at least one antenna ofthe third device.
 18. The medium of claim 11, wherein determining thethird location of the second device is further based on a signalstrength of at least one of the first set of WiFi® wireless signalsreceived by the at least one antenna of the first device from the seconddevice.
 19. A non-transitory computer readable medium comprisinginstructions which, when executed by one or more hardware processors,causes performance of operations comprising: determining a directionfrom an access point toward a particular device based on a first set ofWiFi® wireless signals received by at least one antenna of the accesspoint from the particular device; determining a distance between theaccess point and the particular device based on the first set of WiFi®wireless signals received by the at least one antenna of the accesspoint from the particular device; based at least on (i) the directionfrom a access point toward the particular device, (ii) the distancebetween the access point and the particular device, and (iii) a locationof the access point: determining a location of the particular device.20. The medium of claim 19, wherein at least one antenna of the accesspoint is one of: an adaptive array antenna or a directional antenna. 21.An access point comprising: one or more hardware processors; one or moreantennas; at least one external component, different than the one ormore antennas, that controls a physical configuration of the one or moreantennas.
 22. The access point of claim 21, wherein the at least oneexternal component comprises one or more of: a knob or a switch.
 23. Theaccess point of claim 21, wherein the external component controls theone or more antennas to be positioned into one of two or more differentpositions.
 24. The access point of claim 21, wherein the externalcomponent controls the one or more antennas to be oriented into one oftwo or more different orientations.
 25. The access point of claim 21,wherein different physical configurations of the one or more antennasthat are controlled by the at least one external component result indifferent radiation patterns generated by the access point.